package com.feihong.txgw.inter.contract.adr;

import com.feihong.txgw.model.base_bean.BaseResponse;
import com.feihong.txgw.ui.mvp.model.IBaseModel;
import com.feihong.txgw.ui.mvp.precenter.AbBasePrecenter;
import com.feihong.txgw.ui.mvp.view.IBaseActivity;

import io.reactivex.Observable;


/**
 * @Author wangziheng
 * @ProjectName txgw_app
 * @ClassName IDeliveryAdrContract
 * @package com.feihong.txgw.inter.contract.adr
 * @data 2018/5/7 19:08
 * @Describe
 * @Change
 */
public interface IDeliveryAdrContract {

    interface IDeliveryAdrMainView extends IBaseActivity{

        void getDeliveryAdrInfoError();

        void delDeliveryAdrError();

        void getDeliveryAdrInfoResult(String result);

        void delDeliveryAdrResult(BaseResponse result);
    }

    interface IDeliveryAdrMainModel extends IBaseModel{

        Observable<String> getDeliveryAdrInfo();

        Observable<BaseResponse> delDeliveryAdr(String adrID);
    }

    abstract class AbDeliveryAdrMainPrecenter extends AbBasePrecenter<IDeliveryAdrMainModel,IDeliveryAdrMainView>{
        public abstract void getDeliveryAdrInfo();

        public abstract void delDeliveryAdr(String adrID);
    }

}
